﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using System.ComponentModel;

namespace UniCT.LinkShareWpf.Model
{
    // La decorazione [DataContract]: si tratta di un oggetto che viene utilizzato all'interno del contratto
    // (definisce metodi e oggetti scambiati nella comunicazione). 
    // Questo perché potrebbero esserci dei campi che nella comunicazione non interessano:
    // in quel caso, se non si mette la decorazione DataMember essi non vengono presi in considerazione. 
    [DataContract]
    public class TechnicalInfo
    {
        // DataMember indica le proprietà o i campi che vogliamo serializzare
        [DataMember]
        private UInt32 megaByte;
        [DataMember]
        private EnumVideoType videoType;
        [DataMember]
        private EnumAudioSource aSource;
        [DataMember]
        private EnumVideoSource vSource;
        
       
        public TechnicalInfo()
        {
        }

        public UInt32 MegaByte
        {
            get { return megaByte; }
            set { megaByte= value; }
        }

        public EnumVideoType VideoType
        {
            get { return videoType; }
            set { videoType = value; }
        }

        public EnumVideoSource VideoSource
        {
            get { return vSource; }
            set { vSource = value; }
        }

        public EnumAudioSource AudioSource
        {
            get { return aSource; }
            set { aSource = value; }
        }

    }

    public enum EnumVideoType
    {
        Avi,
        Divx,
        Flv,
        Mkv,
        Mov,
        Mpeg,
        Mpeg4,
        Wmv
    }
    public enum EnumVideoSource
    {
        BDRip,
        CAM,
        DVDSCR,
        DVDRip,
        DVDMux,
        HDTV,
        R5,
        TC,
        TS,
        VHSSCR
    }
    public enum EnumAudioSource
    {
        AC3,
        DD,
        DTS,
        LD,
        MD,
        MP3
    }
}